#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

typedef int SLTDataType;

typedef struct SListNode
{
	SLTDataType data;
	struct SListNode* next;
}SLTNode;

SLTNode* BuySLTNode(SLTDataType x);

void SLTprint(SLTNode* phead);
SLTNode* createSList(int n);

void SLTPushBack(SLTNode ** pphead, SLTDataType x);
void SLTPopBack(SLTNode** pphead);
void SLTPushFront(SLTNode** pphead, SLTDataType x);
void SLTPopFront(SLTNode** pphead);
void SLInsertAfter(SLTNode* pos, SLTDataType x);
void SLInsert(SLTNode** phead, SLTNode* pos, SLTDataType x);
SLTNode* SLTFind(SLTNode* phead, SLTDataType x);
void SLTEraseAfter(SLTNode* pos);
void SLTErase(SLTNode ** pphead,SLTNode* pos);
void SLTDestroy(SLTNode** pphead);

